package com.hightemperator.dao;


import com.hightemperator.po.ActivityUserMessage;
import com.hightemperator.po.SysUser;
import com.hightemperator.po.SysUserAndAuthentication;
import com.hightemperator.po.SysUserExample;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface SysUserMapper {
    int countByExample(SysUserExample example);

    int deleteByExample(SysUserExample example);

    int deleteByPrimaryKey(Integer uid);

    int insert(SysUser record);

    int insertSelective(SysUser record);

    List<SysUser> selectByExample(SysUserExample example);

    SysUser selectByPrimaryKey(Integer uid);

    List<SysUser> getVipUserList(Map<String, Object> param);

    int updateByExampleSelective(@Param("record") SysUser record, @Param("example") SysUserExample example);

    int updateByExample(@Param("record") SysUser record, @Param("example") SysUserExample example);

    int updateByPrimaryKeySelective(SysUser record);

    int updateByPrimaryKey(SysUser record);

    List<SysUserAndAuthentication> selectUserAllMessage(@Param("uid") Integer uid, @Param("loginUserId") Integer loginUserId);

    List<SysUserAndAuthentication> selectUserAllMessageByMobile(@Param("userMobile") String userMobile);

    List<ActivityUserMessage> getActivityUserMessage(@Param("uid") Integer uid);

    int updateNoDisturbing(@Param("uId")Integer uId, @Param("noDisturbing")String noDisturbing);

    String getUserNoDisturbing(@Param("uId")Integer uId);

    List<Integer> getEligibilityUser(Map<String, Object> param);

    List<SysUser> getUserList(@Param("begin")Integer begin,@Param("end")Integer end);

}